package com.cnap.multiclouldmgmt.model.microSvc;

import com.cnap.multiclouldmgmt.model.microSvc.assist.AlarmSvcDataModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 内存使用的情况
 *
 * @author xc
 **/
@ApiModel(value = "com.cnap.multiclouldmgmt.model.microSvc.AlarmSvcInfoModel",description = "告警用的微服务资源统计")
public class AlarmSvcInfoModel {

    //集群名称
    @ApiModelProperty(value = "集群名称")
    private String k8sClusterName;

    //cpu使用率的数据
    @ApiModelProperty(value = "cpu使用率的时间戳")
    private List<AlarmSvcDataModel> cpuUsage;

    //请求时间的数据
    @ApiModelProperty(value = "请求时间的时间戳")
    private List<AlarmSvcDataModel> reqCostTimes;

    //显卡温度
    @ApiModelProperty(value = "显卡温度")
    private List<AlarmSvcDataModel> gpuTemps;

    //显卡温度
    @ApiModelProperty(value = "内存使用率")
    private List<AlarmSvcDataModel> memUsageList = new ArrayList<>();

    //显卡温度
    @ApiModelProperty(value = "磁盘IOPS")
    private List<AlarmSvcDataModel> diskIopsList = new ArrayList<>();

    //显卡温度
    @ApiModelProperty(value = "磁盘吞吐量")
    private List<AlarmSvcDataModel> diskThroughputList = new ArrayList<>();
    //显卡温度
    @ApiModelProperty(value = "显卡使用率")
    List<AlarmSvcDataModel> gpuUsageList = new ArrayList<>();

    //显卡温度
    @ApiModelProperty(value = "GPU使用率")
    private List<AlarmSvcDataModel> gpuMemUsageList = new ArrayList<>();


    /**
     * get
     *
     * @return MemUsageList
     */
    public List<AlarmSvcDataModel> getMemUsageList() {
        return memUsageList;
    }

    /**
     * set
     *
     * @param memUsageList memUsageList
     */
    public void setMemUsageList(List<AlarmSvcDataModel> memUsageList) {
        this.memUsageList = memUsageList;
    }

    /**
     * get
     *
     * @return DiskIopsList
     */
    public List<AlarmSvcDataModel> getDiskIopsList() {
        return diskIopsList;
    }

    /**
     * set
     *
     * @param diskIopsList diskIopsList
     */
    public void setDiskIopsList(List<AlarmSvcDataModel> diskIopsList) {
        this.diskIopsList = diskIopsList;
    }

    /**
     * get
     *
     * @return DiskThroughputList
     */
    public List<AlarmSvcDataModel> getDiskThroughputList() {
        return diskThroughputList;
    }

    /**
     * set
     *
     * @param diskThroughputList diskThroughputList
     */
    public void setDiskThroughputList(List<AlarmSvcDataModel> diskThroughputList) {
        this.diskThroughputList = diskThroughputList;
    }

    /**
     * get
     *
     * @return GpuUsageList
     */
    public List<AlarmSvcDataModel> getGpuUsageList() {
        return gpuUsageList;
    }

    /**
     * set
     *
     * @param gpuUsageList gpuUsageList
     */
    public void setGpuUsageList(List<AlarmSvcDataModel> gpuUsageList) {
        this.gpuUsageList = gpuUsageList;
    }

    /**
     * get
     *
     * @return GpuMemUsageList
     */
    public List<AlarmSvcDataModel> getGpuMemUsageList() {
        return gpuMemUsageList;
    }

    /**
     * set
     *
     * @param gpuMemUsageList gpuMemUsageList
     */
    public void setGpuMemUsageList(List<AlarmSvcDataModel> gpuMemUsageList) {
        this.gpuMemUsageList = gpuMemUsageList;
    }

    /**
     * get
     *
     * @return GpuTemps
     */
    public List<AlarmSvcDataModel> getGpuTemps() {
        return gpuTemps;
    }

    /**
     * set
     *
     * @param gpuTemps gpuTemps
     */
    public void setGpuTemps(List<AlarmSvcDataModel> gpuTemps) {
        this.gpuTemps = gpuTemps;
    }

    /**
     * get
     *
     * @return K8sClusterName
     */
    public String getK8sClusterName() {
        return k8sClusterName;
    }

    /**
     * set
     *
     * @param k8sClusterName k8sClusterName
     */
    public void setK8sClusterName(String k8sClusterName) {
        this.k8sClusterName = k8sClusterName;
    }


    /**
     * get
     *
     * @return CpuUsage
     */
    public List<AlarmSvcDataModel> getCpuUsage() {
        return cpuUsage;
    }

    /**
     * set
     *
     * @param cpuUsage cpuUsage
     */
    public void setCpuUsage(List<AlarmSvcDataModel> cpuUsage) {
        this.cpuUsage = cpuUsage;
    }

    /**
     * get
     *
     * @return ReqCostTimes
     */
    public List<AlarmSvcDataModel> getReqCostTimes() {
        return reqCostTimes;
    }

    /**
     * set
     *
     * @param reqCostTimes reqCostTimes
     */
    public void setReqCostTimes(List<AlarmSvcDataModel> reqCostTimes) {
        this.reqCostTimes = reqCostTimes;
    }
}
